const AUT = require('../../utils/auth')
const api = require('../../http/api')
Page({

  /**
   * 页面的初始数据
   */
  data: {
    // 是否授权 1:未授权  2：已授权
    isAuth: 1,
    Top:[{
        num:'0.00',
        name:'余额'
      },{
        num:'0.00',
        name:'冻结'
      },{
        num:'0',
        name:'积分'
      },{
        num:'0',
        name:'成长值'
      },],
      // 订单
      GoodList:[{
        icon:'balance-list-o',
        name:'待付款'
      },{
        icon:'logistics',
        name:'待发货'
      },{
        icon:'certificate',
        name:'待收货'
      },{
        icon:'flower-o',
        name:'待评价'
      },{
        icon:'after-sale',
        name:'售后'
      },],
      // 优惠买单
      YouList:[{
        icon:'balance-list-o',
        name:'优惠买单'
      },{
        icon:'balance-list-o',
        name:'资金明细'
      },{
        icon:'bill-o',
        name:'申请发票'
      },{
        icon:'bill-o',
        name:'开票记录'
      },{
        icon:'label-o',
        name:'优惠券'
      },{
        icon:'calendar-o',
        name:'签到赚积分'
      },]
  },
  // 唤起下面的登录授权
  gologin() {
    let _this=this
    wx.getUserProfile({
      // 授权语言
      lang: 'zh_CN',
      // 授权描述
      desc: '申请用户授权',
      // 成功返回
      success(res) {
        console.log('成功授权', res);
        // 调用更新用户头像和昵称的方法
        _this.updateUserinfo(res.userInfo)
      },
      fail(error) { 
        console.log('授权失败', error);
      }
    })
  },

// 更新用户头像和昵称的方法
async updateUserinfo(userInfo){
  console.log('拿到用户头像和昵称',userInfo);
  // 检测用户是否登录,在调用更新接口
  const islogined = await AUT.hasUserIsLoginded()
  // 如果登录了在更新用户
  if(islogined){
    // 获取token
    const token=wx.getStorageSync('token')
    const {avatarUrl,city,gender,nickName:nick,province}=userInfo
    // 需要更新的参数
    await api.updateuserinfo({
      avatarUrl,city,nick,gender,province,token
    })
    // 重新拉取详情刷新页面
    this.getUserDetail()
  }
},




  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: async function () {
    // 检测用户是否登录
    const islogined = await AUT.hasUserIsLoginded()
    if (islogined) {
      // 加载用户详情方法
      this.getUserDetail()
    }
  },
  // 获取用户详情的方法
  async getUserDetail() {
    // 拿到token
    const token = wx.getStorageSync('token')
    // 调用用户详情的api
    const res = await api.getuserapi(token)
    console.log('拿到详情', res);
    // 用户渲染的对象
    const _data = {}
    _data.userinfo = res.data.base
    // 通过判断是否有头像(avatarUrl)和昵称(nick)来显示那个页面
    if (res.data.base.avatarUrl && res.data.base.nick) {
      this.setData({
        isAuth: 2
      })
    } else {
      this.setData({
        isAuth: 1
      })
    }
    this.setData(_data)
  },







  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})